#!/usr/bin/env python

from dynamic_reconfigure.parameter_generator_catkin import ParameterGenerator, bool_t, double_t, int_t, str_t

gen = ParameterGenerator()

gen.add('connection_threshold',     double_t,   0, '[m]', 0.06, 0, .25)
gen.add('min_points_per_group',     int_t,      0, '', 5, 1, 20)


gen.add('leg_reliability_limit',    double_t,   0, '', 0.7, 0, 1)
gen.add('publish_legs',             bool_t,     0, '', True)
gen.add('publish_people',           bool_t,     0, '', True)
gen.add('publish_leg_markers',      bool_t,     0, '', True)
gen.add('publish_people_markers',   bool_t,     0, '', True)

gen.add('no_observation_timeout',   double_t,   0, 'Timeout tolerance for no observations [s]', 0.5, 0, 5)
gen.add('max_second_leg_age',       double_t,   0, '[s]', 2.0, 0, 5)
gen.add('max_track_jump',           double_t,   0, '[m]', 1.0, 0, 5)
gen.add('max_meas_jump',            double_t,   0, '[m]', 0.75, 0, 5)
gen.add('leg_pair_separation',      double_t,   0, '[m]', 1.0, 0, 2)
gen.add('fixed_frame',              str_t,      0, 'Fixed Frame', 'odom_combined')

gen.add('kalman_p',                 double_t,   0, '',    4, 0, 10)
gen.add('kalman_q',                 double_t,   0, '', .002, 0, 10)
gen.add('kalman_r',                 double_t,   0, '',   10, 0, 20)
gen.add('kalman_on',                int_t,      0, '',    1, 0,  1)

exit(gen.generate('leg_detector', 'leg_detector', 'LegDetector'))
